System and method for identifying objects

ABSTRACT

A system and method for identifying objects. A preferred embodiment employs a radio transceiver on each object. Each article is identified by recording a condition of an interrogation signal at a time in which the respective transceiver exhibits a nonlinearity.

[0001] This Application is a Continuation of copending Application Ser. No. 09/322,919 of JEROME D. JACKSON filed Jun. 1, 1999 for SYSTEMS AND METHODS EMPLOYING A PLURALITY OF SIGNAL AMPLITUDES TO IDENTIFY AN OBJECT; which is a Continuation of Application Ser. No. 09/181,478 of JEROME D. JACKSON filed Oct. 28, 1998 for SYSTEMS AND METHODS EMPLOYING A PLURALITY OF SIGNAL AMPLITUDES TO IDENTIFY AN OBJECT, now U.S. Pat. No. 6,043,755; which is a Continuation of Application Ser. No. 08/645,492 of JEROME D. JACKSON filed Aug. 17, 1998 for SYSTEMS AND METHODS EMPLOYING A PLURALITY OF SIGNAL AMPLITUDES TO IDENTIFY AN OBJECT, now U.S. Pat. No. 5,864,301; which is a Continuation of Application Ser. No. 08/645,492 of JEROME D. JACKSON filed May 13, 1996. The contents of Application Ser. No. 08/645,492 filed May 13, 1996 is herein incorporated by reference.

BACKGROUND OF THE INVENTION

[0002] 1. Field of the Invention

[0003] This invention relates generally to a system and method for identifying objects and, more particularly, to a system for identifying objects having transceiver tags.

[0004] 2. Description of Related Art

[0005] Automatic identification systems employing radio sensitive tags have been proposed for tracking of people, animals, vehicles and baggage. For example, U.S. Pat. No. 5,204,681, issued Apr. 20, 1993 to Greene, describes a system having a target affixed to an object to be identified, a transmitter for generating interrogation signals, and a receiver having a signal processor for detecting a target. Each target includes multiplenant at ors resonant at respective frequencies. The resonant frequencies associated with a particular target are a subset of the frequencies detectable by the receiver, and provide the target with identification data.

[0006] A problem with the system described in U.S. Pat. No. 5,204,681 is that the system may not be able to identify a target in the presence of other targets. When more than one target is present, the signal processor may be unable to correlate the combination of detected resonant frequencies with any particular target, because the detected combination will not correspond to any one target, but will instead correspond to the combined set of resonant frequencies from all of the targets.

[0007] This problem may be addressed to some extent with a detection amplitude threshold for each resonant frequency. With this thresholding scheme, the signal processor does not consider a resonant frequency to be present unless the received amplitude is over the threshold. A problem with this scheme is that, in order to identify each object, the movement of the objects relative to the transmitter and receiver must be highly regimented such that at any one time only one target is transmitting signals to the receiver above the threshold.

SUMMARY OF THE INVENTION

[0008] It is an object of the present invention to provide a system and method for identifying an object in the presence of other objects.

[0009] To achieve this and other objects of the present invention, there is a method in a system including a transmitter that transmits an interrogation signal, and a plurality of articles each having a respective circuit for transmitting a respective circuit signal responsive to the interrogation signal, the circuit signal having a nonlinearity. The method comprises the steps, performed for each circuit, of detecting the nonlinearity; recording a condition of the interrogation signal, responsive to the previous step; and using the recorded condition to access a record for the circuit.

[0010] According to another aspect of the present invention, there is an apparatus for a system including a transmitter that transmits an interrogation signal, and a plurality of articles each having a respective circuit for transmitting a respective circuit signal responsive to the interrogation signal, the circuit signal having a nonlinearity. The apparatus comprises a detector that detects, for each circuit, the nonlinearity; a recorder that records a condition of the interrogation signal, in response to an output of the detector; and an allocator that allocates a respective record for each circuit, the record being accessible by the recorded condition.

[0011] According to yet another aspect of the present invention, there is an apparatus for a system including a transmitter that transmits an interrogation signal, and a plurality of articles each having a respective circuit for transmitting a respective circuit signal responsive to the interrogation signal, the circuit signal having a nonlinearity. The apparatus comprises means for detecting the nonlinearity; means for recording a condition of the interrogation signal, responsive to the previous means; and means for accessing a record for a circuit by using the recorded condition.

BRIEF DESCRIPTION OF THE DRAWINGS

[0012]FIG. 1 is a diagram of an article identification system in accordance with a first preferred

[0013] embodiment of the present invention.

[0014]FIG. 2 is a block diagram of the transmitter shown in FIG. 1.

[0015]FIG. 3 is a block diagram of the receiver shown in FIG. 1.

[0016]FIG. 4 is a block diagram of an identification label in the first preferred system. 5 FIG. 5 is a diagram of one of the circuits shown in FIG. 4.

[0017]FIG. 6 is a diagram of a device in the circuit shown in FIG. 5.

[0018]FIG. 7 is a curve of the current-voltage characteristics of the device shown in FIG. 6.

[0019]FIG. 8A is curve of the frequency response of one of the circuits shown in FIG. 4.

[0020]FIG. 8B is a curve of the frequency response of the label shown in FIG. 4.

[0021]FIG. 9A-9E are power curves generated by the first preferred system at different frequencies.

[0022]FIG. 10 is a flow chart of a processing performed by the first preferred system.

[0023]FIG. 11 is a flow chart of a part of the processing shown in FIG. 6.

[0024]FIG. 12 is a diagram of an article identification system in accordance with a second preferred embodiment of the present invention.

[0025]FIG. 13 block diagram of an identification label in the second preferred system.

[0026]FIG. 14 is a curve of the frequency response of the label shown in FIG. 13.

[0027]FIG. 15 block diagram of another identification label in the second preferred system.

[0028]FIG. 16 is a curve of the frequency response of the label shown in FIG. 15.

[0029]FIG. 17A-17E are power curves generated by the second preferred system at different frequencies.

[0030]FIG. 18 is a flow chart of a processing performed by the second preferred system.

[0031]FIG. 19 is a flow chart of a part of the processing shown in FIG. 17.

[0032]FIG. 20 is a flow chart of another portion of the processing shown in FIG. 17.

[0033]FIG. 21 is a diagram of an identification label circuit in accordance with an alternative embodiment of the present invention.

[0034] The accompanying drawings which are incorporated in and which constitute a part of this specification, illustrate embodiments of the invention and, together with the description, explain the principles of the invention, and additional advantages thereof. Throughout the drawings, corresponding elements are labeled with corresponding reference numbers.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0035]FIG. 1 shows an article identification system 1000 in according to a first preferred embodiment of the present invention. System 1000 includes aconveyer belt 1010 for moving suitcase 1020 in the direction of arrow 1012. Label 2020 is attached to suitcase 1020. Transmitter 1115 and antenna 1110 transmit interrogations signals to label 2020. Receiver 1125 and antenna 1120 receive response signals from label 2020. Processor 1200 controls transmitter 1115 and receiver 1125 by sending commands signals over signal bus 1225. Processor 1200 executes program 1215 stored in memory 1210.

[0036]FIG. 2 shows a block diagram of transmitter 1115. Tunable sine wave generator 1116 receives a frequency select cornmand from processor 1200, through bus interface I1119 and signal line 1146, and sends a sinusoid signal of the selected frequency to variable power amplifier 1118 via signal line 1149. Amplifier 1118 receives a power select command from processor 1200 through buss interface 1119 and signal line 1148. Amplifier 1118 amplifies the sinusoid signal and sends the amplified signal to antenna 1110 via signal line 1151, causing antenna 1110 to radiate the amplified signal at the selected power.

[0037]FIG. 3 shows a block diagram of receiver 1125 shown in FIG. 1. Tunable band pass filter 1128 receives a band select command from processor 1200, through bus interface 1129 and signal line 1168, and filters out signals received from antenna 1120 that are outside of the selected band. Filter 1128 passes the filtered signal to demodulator 1127 via signal line 1169. Demodulator 1127 is an amplitude modulation detector. Demodulator 1127 passes the demodulated signal via signal line 1171 to A/D converter 1126, which converts the level received from demodulator 1127 into a digital number, and sends the digital number to processor 1200 through signal line 1173 and bus interface 1129.

[0038] The time constant of demodulator 1127 should be relatively long so that the output of demodulator 1127 will have little ripple, allowing processor 1200 to discriminate between small changes in signal level. Although this long time constant makes it difficult to detect rapid changes in signal level, the preferred system does not require such rapid detection, as will be apparent from the description below.

[0039]FIG. 4 shows label 2020 attached to suitcase 1020. Label 2020 includes resonant circuits 2111, 2100, 2101, and 2103. Each resonant circuit is configured to respond to a certain received frequency by transmitting at another frequency. Circuits 2111, 2100, 2101, and 2103 are each less than one square inch, and have a uniform orientation. The distance between adjacent resonant circuits is less than one inch. Because of this uniform orientation and small inter -circuit, intra-label, separation distances, and because the distance between the label 2020 and transmitting antenna 1110 is at least several feet, each of the resonant circuits within label 2020 has a substantially common orientation relative to antenna 1110. Similarly, because the distance between label 2020 and receiving antenna 1120 is at least several feet, each of the resonant circuits within label 2020 has a substantially common orientation relative to antenna 1120.

[0040]FIG. 5 shows resonant circuit 2111. Inductor 3030 and capacitor 3035 constitute a tank ircuit functioning as the receiver 3033 of circuit 3000, with inductor 3030 functioning as the antenna of the receiver. Transistor 3005, diode 3010, capacitor 3020, resistor 3025, and capacitor 3015 function as a power supply, with capacitor 3020 functioning as an AC bypass and resistor 3025 functioning to bias transistor 3005. The receiver and power supply of circuit 2111 are described in more detail in U.S. Pat. No. 3,859,652, issued Jan. 7, 1975 to Hall et al., the contents of which is herein incorporated by reference.

[0041] Inductor 3040, capacitor 3045, and voltage limiter 3100 function as the transmitter of circuit 2111, with inductor 3040 functioning as the antenna of the transmitter. Circuit 2111 responds to a signal having a frequency Tref, radiated by antenna 1110, by transmitting a signal having a frequency Rref. It is presently preferred that capacitor 3045 be a thin film capacitor having a capacitance substantially independent from the voltage across capacitor 3045.

[0042]FIG. 6 shows voltage limiter 3100 of the circuit of FIG. 5. Zener diode 3105 and 3110 are each difussed PN junction devices having heavy doping on the substrate side of the junction, and having a tunnel breakdown voltage of several volts. The anode of zener diode 3105 is coupled to the anode of zener diode 3110. The cathode of zener diode 3105 constitutes the first terminal of voltage limiter 3100, and the cathode of zener diode 3110 constitutes the second terminal of voltage limiter 3100. Zener diodes 3105 and 3110 limit the intensity of the signal transmitted by circuit 2111 at frequency Rref.

[0043] The natural frequency of transmitter 3043 is essentially determined by inductor 3040 capacitor 3045, and parasitic capacitances in circuit 2111. For example, to achieve a transmitter resonance of approximately 0.93 Megahertz (Rref=0.93 Megahertz), inductor 3040 may be 5,800 μμ henries and capacitor 3045 may be 5 microfarads.

[0044] Similarly, the natural frequency of receiver 3033 is essentially determined by inductor 3030 and capacitor 3035. In other words, the receiver resonance of circuit 2111 (Tref) is controlled by inductor 3030 and capacitor 3035.

[0045]FIG. 7 shows the current-voltage characteristic of voltage limiter 3100. As shown in FIG. 7, circuit 3100 sinks a substantial amount of current when the voltage across the first and second terminals exceeds V or −V2. V1 is a function of the zener breakdown voltage of diode 3110 plus the forward bias current drop of diode 3105. Similarly, V2 is a function of the zener breakdown voltage of diode 3105 plus the forward bias current drop of diode 3110.

[0046]FIGS. 8A and 8B are frequency response curves. (The curves shown in FIGS. 8A and 8B do not directly represent processing performed by processor 1200 and program 1215 but are included in this description because they illustrate a relevant characteristic of the circuits in label 2020). FIG. 8A represents a retransmission response of circuit 2111, which transmits at a frequency Rref. As shown in FIG. 8A, when transmitter 1110 transmits at a frequency Tref, the intensity of the signal transmitted by circuit 2111 is at a maximum.

[0047] Circuits 2103, 2101, and 2100 have a structure similar to that of circuit 2111 described above, except that each resonant circuit has component values corresponding to its respective resonant frequency.

[0048]FIG. 8B represents a composite retransmission response of label 2020. This composite response is determined by the combination of circuits 2111, 2100, 2101, 2103. Circuit 2111 transmits at a frequency Rref, and transmits at a maximum intensity when it receives a signal Tref transmitted by antenna 1110. Circuit 2103 transmits at a frequency Rbit3, and transmits at a maximum intensity when it receives a frequency Tbit3 transmitted by antenna 1110. Circuit 2101 transmits at a frequency Rbit1, and transmits at a maximum intensity when it receives a frequency Tbit1 transmitted by antenna 1110. Circuit 2100 transmits at a frequency RbitO, and transmits at a maximum intensity when it receives a frequency Tbit0 transmitted by antenna 1110. In other words, the natural frequency of transmitter 3043 in circuit 2111 is Rref, the natural frequency of transmitter 3043 in circuit 2103 is Rbit3, the natural frequency of transmitter 3043 in circuit 2101 is Rbit1, and the natural frequency of transmitter 3043 in circuit 2100 is Rbit0. The natural frequency of receiver 3033 in circuit 2111 is Tref, the natural frequency of receiver 3033 in circuit 2103 is Tbit3, the natural frequency of receiver 3033 in circuit 2101 is Tbit1, and the natural frequency of receiver 3033 in circuit 2100 is Tbit0.

[0049] Label 2020 represents a number having 4 bit positions, each position corresponding to a respective frequency. Label 2020 represents the number 1011 because label 2020 has circuits corresponding to bit positions 0, 1, and 3, and has no circuit corresponding to bit position 2. More specifically, circuit 2100 corresponds to bit position 0 because circuit 2100 has a maximum response at transmitted frequency Tbit0. Circuit 2101 corresponds to bit position 1 because circuit 2101 has a maximum response at Tbit1. Circuit 2103 corresponds to bit position 3 because circuit 2103 has a maximum response at transmitted frequency Tbit3.

[0050] Processor 1200 detects the value of a particular bit by varying the power transmitted by transmitter 1115 at the frequency corresponding to the particular bit, e.g. frequency Tbit0, to detect whether a breakpoint is present. The presence of a breakpoint means the corresponding bit is 1 and the absence of a breakpoint means the corresponding bit is 0. Processor 1200 follows this procedure for each bit position, to detect the value of the label. In other words, processor 1200 detects the number 1011 by sequentially transmitting on each frequency (Tbit3, Tbit2, Tbit1 and Tbit0) and detecting an intensity (average power) at antenna 1120, as described in more detail below.

[0051] Each label includes a reference circuit having a maximum response at Tref, regardless of the value of the label.

[0052]FIG. 9A shows a curve REF_2020 of signal intensity (average power) on line 1171 at the output of demodulator 1127, versus signal intensity (average power) transmitted by transmitter 1115, when band pass filter 1128 is set to a band having a center frequency at Rref, and sine wave generator 1116 is set to a frequency Tref. The curve REF_2020 results from the response of circuit 2111. Between transmitted intensities I1 and I2, the signal on line 1171 is an increasing function of intensity transmitted by transmitter 1115 until the transmitting intensity reaches a breakpoint at I2, at which point the response of circuit 2111 flattens. Voltage limiter 3100 in circuit 2111 causes this flattened response by limiting the voltage in transmitter 3043 in circuit 2111, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100.

[0053] Label 2020 may be conceptualized as a circuit composed of multiple circuits (circuits 2111, 2103, 2101, and 2100 ). Label 2020 receives a first signal (from antenna 1110 ) and transmits a second signal, the second signal being a function of the first signal, the function having a nonlinearity at a first transmission amplitude (12) corresponding to a first frequency (Tref) of the first signal.

[0054]FIG. 9B shows a curve BIT0_2020 of signal intensity on line 1171 at the output of demodulator 1127, versus signal intensity transmitted by transmitter 1115, when band pass filter 1128 is set to a band having a center frequency at Rbit0, and sine wave generator 1116 is set to a frequency Tbit0. The curve BITO_2020 results from the response of circuit 2100. Between transmitted intensities I1 and I2, the signal on line 1171 is an increasing function of intensity transmitted by transmitter 1115 until the transmitting intensity reaches a breakpoint at 12, at which point the response of circuit 2100 flattens. Voltage limiter 3100 in circuit 2100 causes this flattened response by limiting the voltage in transmitter 3043 in circuit 2100, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100.

[0055]FIG. 9C shows a curve BIT1_2020 of signal intensity on line 1171 at the output of demodulator 1127, versus signal intensity transmitted by transmitter 1115, when band pass filter 1128 is set to a band having a center frequency at Rbit1, and sine wave generator 1116 is set to a frequency Tbit1. The BIT1_2020 results from the response of circuit 2101. Between transmitted intensities I1 and I2, the signal on line 1171 is an increasing function of intensity transmitted by transmitter 1115 until the transmitting intensity reaches a breakpoint at I2, at which point the response of circuit 2101 flattens. Voltage limiter 3100 in circuit 2101 causes this flattened response by limiting the voltage in transmitter 3043, and by detuning transmitter 3043 as the 20 increasing voltage in transmitter 3042 changes the capacitance of the PN junctions in voltage limiter 3100.

[0056]FIG. 9D shows a curve of signal intensity on line 1171 at the output of demodulator 1127, versus signal intensity transmitted by transmitter 1115, when band pass filter 1128 is set to a band having a center frequency at Rbit2, and sine wave generator 1116 is set to a frequency Tbit2. The curve shown in FIG. 9D has no breakpoint because label 2020 has no circuit corresponding to bit 2. In other words, the curve shown in FIG. 9D has no breakpoint because there is no resonant circuit corresponding to transmitted frequency Tbit2 and received frequency Rbit2, in proximity to antenna 1110.

[0057]FIG. 9E shows a curve BIT3_2020 of signal intensity on line 1171 at the output of demodulator 1127, versus signal intensity transmitted by transmitter 1115, when band pass filter 1128 is set to a band having a center frequency at Rbit3, and sine wave generator 1116 is set to a frequency Tbit3. The curve BIT3_2020 results from the response of circuit 2103. Between transmitted intensities I1 and I2, the signal on line 1171 is an increasing function of intensity transmitted by transmitter 1115 until the transmitting intensity reaches a breakpoint at I2, at which point the response of circuit 2111 flattens. Voltage limiter 3100 in circuit 2103 causes this flattened response by limiting the voltage in transmitter 3043 in circuit 2103, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100.

[0058]FIG. 10 shows a procedure, performed by processor 1200 and program 1215, for reading label 2020 on suitcase 1020. First, processor 1200 detects a breakpoint at the reference frequency, by varying the intensity of the signal transmitted on antenna 1110, and saves the breakpoint in a variable B_REF. (step 10010). Next, Processor 1200 sets the system to detect the least significant bit of label 2020, by setting sine wave generator 1116 to the frequency Tbit0 and setting band pass filter 1128 to a band centered around Rbit 0 (step 10020). In step 10020, processor 1200 also sets a variable L_VALUE to 0000. Processor 1200 then searches for a breakpoint at the presently selected bit frequency, by varying the intensity of the signal transmitted on antenna 1110 (step 10030). If a breakpoint exists at the presently selected frequency, step 10030 sets a variable B_PRESENT to the intensity of the breakpoint. If there is a breakpoint at the present bit frequency (step 10040), processor 1200 determines whether the breakpoint at the present bit frequency is within a certain range of the breakpoint at the reference frequency (step 10050). In other words, step 10050 performs the comparison:

[0059]ABS (B _(—) PRESENT−B _(—) REF)<=TOLERANCE,

[0060] where ABS is the absolute value function, B_PRESENT is the breakpoint found in step 10030, and TOLERANCE is a constant. If the breakpoint at the present bit is within this range, processor 1200 sets the present bit in L_VALUE (step 10060).

[0061] As described above, step 10050 disregards any breakpoints that are not in proximity to the breakpoint of the reference circuit in label 2020. These disregarded breakpoints may correspond to circuits in other labels (labels other than label 2020). Thus, in the first preferred system, signals from other labels are rejected as noise.

[0062] Steps 10070 and 10080 repeat steps 10030, 10040, 10050, and 10060 for each bit position and corresponding frequency. More specifically, processor 1200 executes step 10030-10060 a first time, at which time step 10060 changes L_VALUE from 0000 to 0001. Processor 1200 then selects the next bit frequency by setting sine wave generator 1116 to frequency Tbit1 and setting band pass filter 1128 to a band having a center frequency at Rbit1 (step 10080). Processor 1200 then reexecutes steps 10030-10060, at which time step 60 changes L_VALUE from 0001 to 0011.

[0063] Subsequently, processor 1200 selects the next bit frequency by setting sine wave generator 1116 to frequency Tbit2 and setting band pass filter 1128 to a band having a center frequency at Rbit2 (step 10080). Because no breakpoint exists for the second bit, processor 1200 does not execute steps 10050 and 10060, and L_VALUE does not change.

[0064] Subsequently, processor 1200 selects the next bit by setting sine wave generator 1116 to a frequency Tbit3 and setting band pass filter 1128 to a band having a center at Rbit3 (step 10080), and reexecutes steps 10030-10060, at which time L_VALUE changes from 0011 to 1011.

[0065] Thus, processor 1200 determines a set of other frequencies (Tbit0, Tbit1, and Tbit3) of the first signal at which the second signal has a nonlinearity at a first signal amplitude corresponding to the first transmission amplitude (an amplitude within tolerance of I2).

[0066] At the end of the procedure shown in FIG. 10, L_VALUE will equal 1011. Thus, L_VALUE stores an article identification signal corresponding to suitcase 1020.

[0067]FIG. 11 shows a subprocedure of step 10010 and 10030 of FIG. 10. The procedure of FIG. 11 collects data points along a response curve, such as the curve shown in FIG. 9A, by incrementally increasing the transmitted signal intensity. To determine where a breakpoint exists, processor 1200 processes the curve by segments, and detects whether the difference in slope of any two adjacent segments is greater than a certain threshold. More specifically, processor 1200 causes amplifier 1118 to transmit an initial intensity (I1) on antenna 1110, and detects a received intensity (through antenna 1120, filter 1128, demodulator 1127, and A/D converter 1126) by squaring the value on signal line 1173 at the output of A/D converter 1126 (step 11010). Processor 1200 then causes amplifier 1118 to transmit at a second intensity, higher than the initial intensity, and detects a second received intensity by squaring the value on signal line 1173 (step 11020). Processor 1200 then causes amplifier 1118 to transmit at the next higher intensity, and detects another received intensity (step 11030). Processor 1200 then compares a difference between the slope of the current segment and the slope of the previous segment, by $\frac{{SLOPE}_{P} - {SLOPE}_{T}}{{SLOPE}_{P}}\quad {to}\quad 0.2\quad {\left( {{step}\quad 11040} \right).}$

[0068] comparing the absolute value of the quantity . If this difference in slope is greater than 0.2, a break point exists and the procedure of FIG. 11 terminates. If this difference in slope in not greater than 0.2, it is determined whether the transmission intensity limit has been reached (step 11050). If the limit has not been reached, processor 1200 repeats steps 11030 and 11040. If the limit has been reached, no breakpoint exists, and the procedure of FIG. 11 terminates. ${{SLOPE}_{T} = \frac{{RECEIVED}_{T} - {RECEIVED}_{T - 1}}{{TRANSMITTED}_{T} - {TRANSMITTED}_{T - 1}}},$

[0069] where TRANSMITTED_(T) is the intensity transmitted by amplifier 1118 in step 11030 and RECEIVED_(T) is the intensity detected by squaring the output of A/D converter 1126 in step 11030. TRANSMITTED_(T−1) is the intensity transmitted in the transmit and detect step previous to step 11030 and RECEIVED_(T−1) is the intensity detected in the transmit and detect step previous to step 11030. This previous transmit and detect step will be step 11020, the first time through the loop, or a previous invocation of step 11030, subsequent times through the loop. ${{SLOPE}_{P} = \frac{{RECEIVED}_{2} - {RECEIVED}_{1}}{{TRANSMITTED}_{2} - {TRANSMITTED}_{1}}},$

[0070] where TRANSMITTED₁ is the intensity transmitted in step 11010, RECEIVED₁ is the intensity received in step 11010, TRANSMITTED₂is the intensity transmitted in step 11020, and RECEIVED₂ is the intensity received in step 11020.

[0071]FIG. 12 shows an article identification system 8000 in accordance with a second preferred embodiment of the present invention. System 8000 includes a conveyer belt 1010 for moving suitcases 1020, 1025, and 1030 in the direction of arrow 1012. Label 2020 is attached to suitcase 1020, label 2025 is attached to suitcase 1025, and label 2030 is attached to suitcase 1030. Transmitter 1115 and antenna 1110 transmit interrogation signals to labels 2020, 2025, and 2030. Receiver 1125 and antenna 1120 receive response signals from labels 2020, 2025, and 2030. Processor 1200 controls transmitter 1115 and receiver 1125 by sending commands signals over signal bus 1225. Processor 1200 executes program 1216 stored in memory 1210.

[0072] In the Figures describing the second preferred system, elements corresponding to elements in the first preferred system are designated with corresponding reference numbers.

[0073] Labels 2025 and 2030 each have a structure similar to label 2020, including multiple resonant circuits. The labels differ from each other, however, in the combination of resonant frequencies associated with a particular label. While label 2020 has resonant frequencies corresponding to the respective frequencies of circuits 2111, 2100, 2101, and 2103, label 2025 has a different set of resonant circuits and therefore a different set of corresponding resonant frequencies. Similarly, label 2030 has its own set of resonant frequencies.

[0074]FIG. 13 shows label 2025 attached to suitcase 1025. Label 2025 includes resonant circuits 2111, 2101, and 2103. Label 2025 is flat so that each of the resonant circuits has a substantially common orientation relative to antenna 1110, and each of the resonant circuits has a substantially common orientation relative to antenna 1120.

[0075]FIG. 14 represents a composite retransmission response of label 2025. This composite response is determined by the combination of circuits 2111, 2101, and 2103. Label 2025 represents a number having 4 bit positions, each position corresponding to a respective frequency. Label 2025 represent the number 1010 because label 2025 has circuits corresponding to bit positions 1 and 3, and has no circuits corresponding to bit positions 0 and 2.

[0076]FIG. 15 shows label 2030 attached to suitcase 1030. Label 2030 includes resonant circuits 2111, 2101, and 2100. Label 2030 is flat so that each of the resonant circuits has a substantially common orientation relative to antenna 1110, and each of the resonant circuits has a substantial common orientation relative to antenna 1120.

[0077]FIG. 16 represents a composite retransmission response of label 2030. This composite response is determined by the combination of circuits 2111, 2100, and 2101. Label 2030 represents a number having 4 bit positions, each position corresponding to a respective frequency. Label 2030 represent the number 0011 because label 2030 has circuits corresponding to bit positions 0 and 1, and has no circuits corresponding to bit positions 2 and 3.

[0078]FIG. 17A shows a curve REF_C of signal intensity (average power) on line 1171 at the output of demodulator 1127, versus signal intensity (average power) transmitted by transmitter 1118, when band pass filter 1128 is set to a band having a center frequency at Rref, and sine wave generator 1116 is set to a frequency Tref. The curve REF_C shown in FIG. 17A is a result of the added intensities of the signals retransmitted by circuit 2111 in label 2020, circuit 2111 in label 2025, and circuit 2111 in label 2030. The dotted curve REF_2020, having a slope of 0.71 between intensities I1 and I2 and a slope of 0 for intensities greater than I2, represents the contribution of circuit 2111 in label 2020. The dotted curve REF_2025, having a slope of 0.27 between intensities I1 and I3 and a slope of 0 for intensities greater than I3, represents the contribution of circuit 2111 in label 2025. The dotted curve REF_2030, having a slope of 0.14 between intensities I1 and I4 and a slope of 0 for intensities greater than I4, represents the contribution of circuit 2111 in label 2030.

[0079] In FIG. 17A, between transmitted intensities I1 and I2, REF_C has a slope of approximately 1.13 until the intensity reaches a breakpoint at I2, at which point the response of circuit 2111 in label 2020 flattens. The respective voltage limiter 3100 in circuit 2111 in label 2020 causes this flattened response at I2 by limiting the voltage in the respective transmitter 3043 in circuit 2111, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100. Between transmitted intensities I2 and I3, REF_C has a slope of 0.42 until the intensity reaches a breakpoint at I3, at which point the response of circuit 2111 in label 2025 flattens. The respective voltage limiter 3100 in circuit 2111 in label 2025 causes this flattened response at I3 by limiting the voltage in the respective transmitter 3043 in circuit 2111, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100. Between transmitted intensities 13 and 4, REF_C has a slope of .14 until the intensity reaches a breakpoint at I4, at which point the response of circuit 2111 in label 2030 flattens. The respective voltage limiter 3100 in circuit 2111 in label 2030 causes this flattened response at I4 by limiting the voltage in the respective transmitter 3043 in circuit 2111, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100.

[0080] Each of labels 2020, 2025, and 2030 may be conceptualized as a respective a circuit (each composed of multiple resonant circuits) for receiving a first signal and transmitting a respective second signal, the second signal being a function of the first signal, the function having a nonlinearity at a respective first transmission amplitude corresponding to a first frequency (Tref of the first signal. For label 2020, the first transmission amplitude is I2. For label 2025, the first transmission amplitude is I3. For label 2030, the first transmission amplitude is I4. (See FIG. 17A).

[0081]FIG. 17B shows a curve BIT0_C of signal intensity on line 1171 at the output of demodulator 1127, versus signal intensity transmitted by transmitter 1118, when band pass filter 1128 is set to a band having a center frequency at Rbit0, and sine wave generator 1116 is set to a frequency Tbit0. The curve BIT0_C shown in FIG. 17B is a result of the added intensities of the signals retransmitted by circuit 2100 in label 2020, and circuit 2100 in label 2030. The dotted curve BIT0_2020, having a slope of approximately 0.71 between intensities I1 and I2 and a slope of 0 for intensities greater than I2, represents the contribution of circuit 2100 in label 2020. The dotted curve BIT0-2030, having a slope of approximately 0.14 between intensities I1 and I4 and a slope of 0 for intensities greater than I4, represents the contribution of circuit 2100 in label 2030.

[0082] In FIG. 17B, between transmitted intensities I1 and I2, BIT0_C has a slope of approximately 0.85 until the intensity reaches a breakpoint at I2, at which point the response of circuit 2100 in label 2020 flattens. The respective voltage limiter 3100 in circuit 2100 in label 2020 causes this flattened response at I2 by limiting the voltage in the respective transmitter 3043 in circuit 2100, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100. Between transmitted intensities I2 and I4, BIT0_C has a slope of approximately 0.14 until the intensity reaches a breakpoint at I4, at which point the response of circuit 2100 in label 2030 flattens. The respective voltage limiter 3100 in circuit 2100 in label 2030 causes this flattened response at I4 by limiting the voltage in the respective transmitter 3043 in circuit 2100, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100.

[0083]FIG. 17C shows a curve BIT1_C of signal intensity on line 1171 at the output of demodulator 1127, versus signal intensity transmitted by transmitter 1118, when band pass filter 1128 is set to a band having a center frequency at Rbit1, and sine wave generator 1116 is set to a frequency Thit1. The curve BIT1_C shown in FIG. 17C is a result of the added intensities of the signals retransmitted by circuit 2101 in label 2020, circuit 2101 in label 2025, and circuit 2101 in label 2030. The dotted curve BIT1_2020, having a slope of approximately .71 between intensities I1 and I2 and a slope of 0 for intensities greater than I2, represents the contribution of circuit 2111 in label 2020. The dotted curve BIT1_2025, having a slope of approximately 0.27 between intensities I1 and I3 and a slope of 0 for intensities greater than I3, represents the contribution of circuit 2111 in label 2025. The dotted curve BITI-2030, having a slope of approximately 0.14 between intensities I1 and I4 and a slope of 0 for intensities greater than I4, represents the contribution of circuit 2111 in label 2030.

[0084] In FIG. 17C, between transmitted intensities I1 and I2, BIT1_C has a slope of approximately 1.13 until the intensity reaches a breakpoint at I2, at which point the response of circuit 2101 in label 2020 flattens. The respective voltage limiter 3100 in circuit 2101 in label 2020 causes this flattened response at I2 by limiting the voltage in the respective transmitter 3043 in circuit 2101, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100. Between transmitted intensities I2 and I3, BIT1_C has a slope of approximately 0.42 until the intensity reaches a breakpoint at I3, at which point the response of circuit 2101 in label 2025 flattens. The respective voltage limiter 3100 in circuit 2101 in label 2025 causes this flattened response at I3 by limiting the voltage in the respective transmitter 3043 in circuit 2101, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100. Between transmitted intensities I3 and I4, BIT1_C has a slope of approximately 0.14 until the intensity reaches a breakpoint at I4, at which point the response of circuit 2101 in label 2030 flattens. The respective voltage limiter 3100 in circuit 2101 in label 2030 causes this flattened response at I4 by limiting the voltage in the respective transmitter 3043 in circuit 2101, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100.

[0085]FIG. 17D shows a curve BIT2_C of signal intensity on line 1171 at the output of demodulator 1127, versus signal intensity transmitted by transmitter 1118, when band pass filter 1128 is set to a band having a center frequency at Rbit2, and sine wave generator 1116 is set to a frequency Tbit2. The curve BIT2_C shown in FIG. 17D has no breakpoints because none of labels 2020, 2025, and 2030 has a circuit corresponding to bit 2.

[0086]FIG. 17E shows a curve BIT3_of signal intensity on line 1171 at the output of demodulator 1127, versus signal intensity transmitted by transmitter 1118, when band pass filter 1128 is set to a band having a center frequency at Rbit3, and sine wave generator 1116 is set to a frequency Tbit3. The curve BIT3_C shown in FIG. 17E is a result of the added intensities of the signals retransmitted by circuit 2103 in label 2020, and circuit 2103 in label 2025. The dotted curve BIT3_2020, having a slope of approximately 0.71 between intensities I1 and I2 and a slope of approximately 0 for intensities greater than I2, represents the contribution of circuit 2103 in label 2020. The dotted curve BIT3_2025, having a slope of approximately 0.27 between intensities I1 and I3 and a slope of 0 for intensities greater than I3, represents the contribution of circuit 2103 in label 2025.

[0087] In FIG. 17E, between transmitted intensities I1 and I2, BIT3_C has a slope of approximately 0.98 until the intensity reaches a breakpoint at I2, at which point the response of circuit 2103 in label 2020 flattens. The respective voltage limiter 3100 in circuit 2103 in label 2020 causes this flattened response at I2 by limiting the voltage in the respective transmitter 3043 in circuit 2103, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100. Between transmitted intensities I2 and I3, BIT3_C has a slope of approximately 0.27 until the intensity reaches a breakpoint at I3, at which point the response of circuit 2103 in label 2025 flattens. The respective voltage limiter 3100 in circuit 2103 in label 2025 causes this flattened response at I3 by limiting the voltage in the respective transmitter 3043 in circuit 2103, and by detuning transmitter 3043 as the increasing voltage in transmitter 3043 changes the capacitance of the PN junctions in voltage limiter 3100.

[0088]FIG. 18 shows a procedure, performed by processor 1200 and program 1216, for reading labels 2020, 2025, and 2030. This procedure exploits the fact that the circuits within a particular label will have breakpoints in proximity to each other, because each circuit within a particular label will have a substantially common combination of distance relative to transmitting antenna 1110 and orientation relative to antenna 1110. Because the circuits within a label have a substantially common breakpoint, the label may be conceptualized as having this common breakpoint. In other words, this procedure exploits the fact that each label will usually exhibit a, unique breakpoint, because each label will have a unique combination of distance relative to transmitting antenna 1110 and orientation relative to transmitting antenna 1110.

[0089] First, processor 1200 detects each breakpoint at the reference frequency and allocates a record for each breakpoint (step 18010). (In the preferred embodiments, when a label is present, there will always be a breakpoint at the reference frequency, because each label has a reference circuit.) Each record includes a REFERENCE_BREAKPOINT field for recording the transmission intensity on antenna 1110 at which the breakpoint occurred, and a LABEL_VALUE field for storing a label value corresponding to the breakpoint stored in the REFERENCE_BREAKPOINT field.

[0090] Next, Processor 1200 sets the system to detect the least significant bit, by setting sine wave generator 1116 to the frequency Tbit0 and setting band pass filter 1128 to a band centered around Rbit0. (step 18020). In step 18020, processor 1200 also performs the variable assignment BIT_POSITION =0.

[0091] In step 18030, processor 1200 searches for each breakpoint at the presently selected frequency. For each such breakpoint, processor 1200 sets a bit in the LABEL_VALUE field of the record having a REFERENCE_BREAKPOINT field value in proximity to the breakpoint (step 18030).

[0092] Steps 18070 and 18080 repeat step 18030 for the remaining bit positions. In step 18080, processor 1200 sets sine wave generator 1116 to transmission frequency corresponding to a bit position; sets band pass filter 1128 to a center frequency corresponding to the bit position; and performs the variable assignment BIT_POSITION=BIT_POSITION +1.

[0093]FIG. 19 shows the procedure of step 18010 shown in FIG. 18 in more detail. The procedure shown in FIG. 19 is similar to that shown in FIG. 11, except that the procedure of FIG. 19 finds multiple breakpoints. Instead of terminating after a breakpoint is found, as is done in the procedure of FIG. 11, the procedure of FIG. 19 records the existence of a found breakpoint and then continues to increment the transmission intensity to search for additional breakpoints. Processor 1200 collects data along a response curve, such as the curve REF_C shown in FIG. 17A. To determine where the breakpoints exist, processor 1200 processes the curve by segments, and detects whether the percentage change in slope between two segments is greater than 20%. More specifically, processor 1200 sets an initial intensity (I1) for amplifier 1118 and sets a variable RECORD_COUNT=0. (step 19010).

[0094] In step 19020, processor 1200 detects a reference segment. Processor 1200 causes amplifier 1118 to transmit the present intensity, TRANSMITTED_(T), on antenna 1110; detects a received intensity, RECEIVED_(T), (through antenna 1120, filter 1128, demodulator 1127, and A/D converter 1126) by squaring the value on signal line 1173 at the output of A/D converter 1126; performs the variable assignments TRANSMITTED₁=TRANSMITTED_(T), RECEIVED₁=RECEIVED_(T); increments TRANSMITTED_(T); causes amplifier 1118 to transmit at TRANSMITTED_(T); detects a received intensity, RECEIVED_(T), by squaring the value on signal line 1173; and performs the variable assignments TRANSMITTED₂=TRANSMITTED_(T), RECEIVED₂=RECEIVED_(T).

[0095] Processor 1200 then determines whether the transmission intensity limit IAMX has been reached, whether TRANSMITTED_(T)>IMAX (step 19025). If the limit has been reached, the procedure of FIG. 19 ends. Otherwise, processor 1200 detects the next segment by performing the variable assignments TRANSMITTED_(T−1)=TRANSMITTED_(T), RECEIVED_(T−1)=RECEIVED_(T); incrementing TRANSMITTED_(T) by a constant IDELTA; causing amplifier 1118 to transmit at TRANSMITTED_(T); and detecting a received intensity RECEIVED_(T). (step 19030), wherein IDELTA=(IMAX-I1)/200 .

[0096] Processor 1200 then processes a difference between the slope of the current segment (SLOPE_(T))and the slope of the reference segment (SLOPE_(p)), by comparing the absolute value of ${\frac{{SLOPE}_{P} - {SLOPE}_{T}}{{SLOPE}_{P}}\quad {to}\quad 0.2\quad \left( {{step}\quad 19035} \right)},$

[0097] the expression ${{SLOPE}_{P} = \frac{{RECEIVED}_{2} - {RECEIVED}_{1}}{{TRANSMITTED}_{2} - {TRANSMITTED}_{1}}},$

[0098] wherein, and ${SLOPE}_{T} = {\frac{{RECEIVED}_{T} - {RECEIVED}_{T - 1}}{{TRANSMITTED}_{T} - {TRANSMITTED}_{T - 1}}.}$

[0099] If this expression is greater than 0.2, a breakpoint exists and processor 1200 executes step 19045, which performs the variable assignments RECORD_COUNT=RECORD_COUNT+1;

[0100] R_ARRAY [RECORD_COUNT,REFERENCE_BREAKPOINT]=TRANSMITTED_(T);

[0101] R_ARRAY [RECORD_COUNT, LABEL_VALUE]=0

[0102] TRANSMITTED_(T) 32 TRANSMITTED_(T)+5*IDELTA,

[0103] wherein R_ARRAY is an array of records.

[0104] Step 19045 increments TRANSMITTED_(T) by five times IDELTA so that the next part of the curve to be processed will be removed from the breakpoint recorded in the current invocation of step 19045, thereby ensuring that multiple records are not allocated for a single breakpoint. In other words, ensuring that the next curve part is not too close to the currently recorded breakpoint is a safeguard in case the breakpoint is spread out over a curve part of greater than IDELTA.

[0105]FIG. 20 shows a processing of step 18030 of FIG. 18 in more detail. The procedure of FIG. 20 is similar to that of FIG. 19, except that when a breakpoint is processor 1200 searches through each record in R_ARRAY and sets a bit in the LABEL_VALUE field of the record having a REFERENCE_BREAKPOINT near the current breakpoint. Processor 1200 collects data along a response curve, such as the curve BIT0_C shown in FIG. 17B. To determine where the breakpoints exist, processor 1200 processes the curve by segments, and detects whether the percentage change in slope between two segments is greater than 20%. More specifically, processor 1200 sets an initial intensity (I1) for amplifier 1118. (step 20010).

[0106] In step 20020, processor 1200 detects a reference segment. Processor 1200 causes amplifier 1118 to transmit the present intensity, TRANSMITTED_(T), on antenna 1110; detects a received intensity, RECEIVED_(T), (through antenna 1120, filter 1128, demodulator 1127, and A/D converter 1126) by squaring the value on signal line 1173 at the output of A/D converter 1126; performs the variable assignments TRANSMITTED₁=TRANSMITTED_(T), RECEIVED₁=RECEIVED_(T); increments TRANSMITTED_(T); causes amplifier 1118 to transmit at TRANSMITTED_(T); detects a received intensity, RECEIVED_(T), by squaring the value on signal line 1173; and performs the variable assignments TRANSMITTED₂=TRANSMITTED_(T), RECEIVED₂=RECEIVED_(T).

[0107] Processor 1200 then determines whether the transmission intensity limit has been reached (step 20025). If the limit has been reached, the procedure of FIG. 20 ends. Otherwise, processor 1200 detects the next segment by performing the variable assignments TRANSMITTED_(T−1)=TRANSMITTED_(T), RECEIVED_(T−1)=RECEIVED_(T); incrementing TRANSMITTED_(T); causing amplifier 1118 to transmit at TRANSMITTED_(T); and detecting a received intensity RECEIVED_(T). (step 20030). Processor 1200 then processes a difference between the slope of the current segment (SLOPE_(T))and the slope of the reference segment ${\frac{{SLOPE}_{P} - {SLOPE}_{T}}{{SLOPE}_{P}}\quad {to}\quad 0.2\quad \left( {{step}\quad 20035} \right)},{{{wherein}\quad {SLOPE}_{P}} = \frac{{RECEIVED}_{2} - {RECEIVED}_{1}}{{TRANSMITTED}_{2} - {TRANSMITTED}_{1}}},$

[0108] (SLOPE_(p)), by comparing the absolute value of the expression

[0109] and ${SLOPE}_{T} = {\frac{{RECEIVED}_{T} - {RECEIVED}_{T - 1}}{{TRANSMITTED}_{T} - {TRANSMITTED}_{T - 1}}.}$

[0110] If this expression is greater than 0.2, a breakpoint exists and processor 1200 executes step 20045, which includes the following FOR loop, show in TABLE 1: TABLE 1 FOR I = 1 TO RECORD_COUNT IF ABS (R_ARRAY [I, REFERENCE_BREAKPOINT]− TRANSMITTED_(T)) < INTRA_LABEL_VARIANCE THEN R_ARRAY [I, LABEL_VALUE] = R_ARRAY [I, LABEL_VALUE] OR (1{circumflex over ( )}BIT_POSITION);

[0111] wherein I is a variable used to index to a particular record, INTRA_LABEL_VARIANCE is a constant having a value reflecting differences between the resonant circuits of a given label, OR is a bit wise logical OR operator, and “^(Λ)” is a shift operator: 1^(Λ)0=1 (0001 binary), 1^(Λ)1=2 (0010 binary), 1^(Λ)2=4 (0100 binary), 1^(Λ)3=8 (1000 binary), etc. After executing this FOR LOOP, step 20045 performs the following variable assignment

[0112] TRANSMITTED_(T)=TRANSMITTED_(T)+5*IDELTA.

[0113] Processing of the second preferred method to read labels 2020, 2025, and 2030 shown in FIG. 12, will now be described in more detail. In the program fragments shown in the description below, text appearing after and exclamation points (“!”) denotes comments for documenting a program statement. These comments are for the benefit of a person reading the program and are not executed by processor 1200.

DETECTION OF BREAKPOINT FOR EACH LABEL

[0114] Processor 1200 determines each breakpoint at the reference frequency by setting sine wave generator 116 to the frequency to Tref and setting band pass filter 1128 to a band centered around Rref and executing the procedure outlined in FIG. 19 (step 18010). In FIG. 19, after executing step 19010, the first execution of step 19020 detects a reference segment between Ihand I1+IDELTA. In accordance with the previous description of FIG. 17A, the value of SLOPE_(p) is 1.13. Subsequently, processor 1200 repeatedly executes steps 19025, 19030, and 19035 until step 19030 detects a breakpoint segment, having a slope at least 20% different than SLOPE_(P). In other words, processor 1200 repeatedly executes steps 19025, 19030, and 19035 the SLOPE_(T) will be less than .904. (Although the slope of the curve REF_C is 0.42 between I2 and I3, the breakpoint segment detected in step 19030 may straddle intensity I2, resulting in a value of SLOPE_(T) of between 1.13 and 0.42.)

[0115] Step 19045 then executes the instructions: ! !Set RECORD_COUNT to 1. ! !RECORD_COUNT = RECORD_COUNT + 1; !Record the first reference breakpoint. This will be a number in proximity to 12. ! R_ARRAY [RECORD_COUNT, REFERENCE_BREAKPOINT]=TRANSMITTED_(T); !Clear label value field for subquent detection of the label value for this first reference !breakpoint ! R_ARRAY [RECORD_COUNT, LABEL_VALUE]=0; ! !Set next intensity away from presently-recorded breakpoint, to prevent unwanted !redetection of the breakpoint. ! TRANSMITTED_(T)=TRANSMITTED_(T)+5 * IDELTA

[0116] Step 19020 then detects a new reference segment, having a slope of 0.42. Processor 1200 then repeatedly executes steps 19025, 19030, and 19035 until step 19030 detects a segment, having a slope of 0.336 or less (0.336 being 20% different from 0.42).

[0117] Step 19045 then executes the instructions: ! !Set RECORD_COUNT to 2. ! RECORD_COUNT RECORD_COUNT +1; ! !Record the second reference breakpoint. This will be a number in proximity to 13. R_ARRAY [RECORD_COUNT, REFERENCE_BREAKPOINT]=TRANSMITTED_(T); ! !Clear label value field for subquent detection of the label value for second reference !breakpoint ! R_ARRAY [RECORD_COUNT, LABEL_VALUE]= 0; ! !Set next intensity away from presently-recorded breakpoint, to prevent unwanted !redetection of the breakpoint. ! TRANSMITTED_(T)=TRANSMITTED_(T)+5 * IDELTA

[0118] Step 19020 then detects a new reference segment, having a slope of .42. Processor 1200 then repeatedly executes steps 19025, 19030, and 19035 until step 19030 detects a segment, having a slope of 0.112 or less (0.112 being 20% different than 0.14). Step 19045 then executes the instructions: ! !Set RECORD_COUNT to 3. !RECORD_COUNT = RECORD_COUNT + 1; ! !Record the third reference breakpoint. This will be a number in proximity to 14. ! R_ARRAY [RECORD_COUNT, REFERENCE_BREAKPOINT]= TRANSMITTED_(T); ! !Clear label value field for subquent detection of the label value for this third reference !breakpoint ! R_ARRAY [RECORD_COUNT, LABEL_VALUE]=0; ! !Set next intensity away from presently-recorded breakpoint, to prevent unwanted !redetection of the breakpoint. ! TRANSMITTED_(T)=TRANSMITTED_(T)+5 * IDELTA

[0119] Step 19020 then detects a reference segment, having a slope of 0 . Processor 1200 then repeatedly executes 19025, 19030, and 19035 until TRANSMITTED_(T) is greater than IMAX, at which point the procedure of FIG. 19 terminates.

[0120] Thus, after execution of step 18010, processor 1200 has allocated three records, each with a LABEL_VALUE field of 0 . The FOR loop shown in TABLE 1 above is a loop FROM 1 TO 3, because RECORD_COUNT is equal to 3.

DETECTION OF BIT 0 FOR EACH LABEL

[0121] Processor 1200 then sets the system to detect the least significant bit, by setting sine wave generator 1116 to the frequency Tbit0 and setting band pass filter 1128 to a band centered around Rbit0; and performs the variable assignment BIT_POSITION=0. (step 18020). Processor 1200 then processes each breakpoint at the transmitted frequency Tbit0, (step 18030), by executing the procedure outlined in FIG. 20. In other words, processor 1200 collects data along the response curve bit0_C shown in FIG. 17B.

[0122] After setting an initial intensity of I1 for amplifier 1118 (step 20010), processor 1200 detects a reference segment between I1 and I1+IDELTA, having a slope of 0.85. Processor 1200 then repeatedly executes steps 20025, 20030, and 20035 until step 20030 detects a breakpoint segment, having a slope of 0.68 or less (0.68 being 20% less than 0.85). Now, TRANSMITTED_(T) has a value in the vicinity of I2. Thus, when processor 1200 executes the FOR loop of step 20045, shown in TABLE 1 above, the IF statement condition will be true the first time through the loop, because R_ARRAY [1, REFERENCE_BREAKPOINT] also has a value in the vicinity of I2.

[0123] More specifically, the following expression will be true:

[0124] ABS(R_ARRAY[1,REFERENCE_BREAKPOINT]−TRANSMITTED_(T))<INTRA_LABEL_VARIANCE.

[0125] Thus, the first time through the loop processor 1200 executes the THEN clause of TABLE 1:

[0126] R_ARRAY [1, LABEL_VALUE]=0000 or 1 ^(Λ)0.

[0127] Thus, immediately after this invocation of step 20045, R_ARRAY [1, LABEL_VALUE] is equal to 0001, R_ARRAY [2, LABEL_VALUE] is equal to 0000, and R_ARRAY[3, LABEL_VALUE] is equal to 0000.

[0128] Subsequently, step 20045 detects a reference segment between I2 and I4, having a slope of 0.14. Subsequently, processor 1200 executes steps 20025, 20030, and 20035, until step 20030 detects a segment extending past intensity I4, having a slope of 0.112 or less (0.112 being 20% less than 0.14). Now, TRANSMITTED_(T) has a value in the vicinity of I4. Thus, when processor 1200 executes the FOR loop of step 20045, shown in TABLE 1 above, the IF statement condition will be true the third time through the loop, because R_ARRAY [3, REFERENCE_BREAKPOINT] also has a value in the vicinity of I4. More specifically, the following expression will be true:

[0129] ABS(R_ARRAY[3,REFERENCE_BREAKPOINT]−TRANSMITTED_(T))<INTRA_LABEL_VARIANCE.

[0130] Thus, the third time through the loop processor 1200 executes the THEN clause of TABLE 1:

[0131] R_ARRAY[3,LABEL_VALUE]=0000 or 1^(Λ)0.

[0132] Thus, immediately after this invocation of step 20045, R_ARRAY [1, LABEL_VALUE] is equal to 0001, R_ARRAY [2, LABEL_VALUE] is equal to 0000, and R_ARRAY[3, LABEL_VALUE] is equal to 0001.

[0133] Subsequently, step 20020 detects a reference segment past intensity 14 having a slope 0. Processor 1200 then repeatedly executes steps 20025, 20030, and 20035 until TRANSMITTED_(T) >IMAX, and the procedure of FIG. 20 then terminates.

DETECTION OF BIT1 FOR EACH LABEL

[0134] Processor 1200 then sets the system to detect the next most significant bit, by setting sine wave generator 1116 to the frequency Tbit1 and setting band pass filter 1128 to a band centered around Rbit1; and performs the variable assignment BIT_POSITION=l. (step 18080). Processor 1200 then processes each breakpoint at the transmitted frequency Tbit1, (step 18030), by executing the procedure outlined in FIG. 20. In other words, processor 1200 collects data along the response curve bit1_C shown in FIG. 17C.

[0135] After setting an initial intensity of I1 for amplifier 1118 (step 20010), processor 1200 detects a reference segment between I1 and I1+IDELTA, having a slope of 1.13. Processor 1200 then repeatedly executes steps 20025, 20030, and 20035 until step 20030 detects a breakpoint segment, having a slope of 0.90 or less (0.90 being 20% less than 1.13). Now, TRANSMITTED_(T) has a value in the vicinity of I2. Thus, when processor 1200 executes the FOR loop of step 20045, shown in TABLE 1 above, the IF statement condition will be true the first time through the loop, because R_ARRAY [1, REFERENCE_BREAKPOINT] also has a value in the vicinity of I2. More specifically, the following expression will be true:

[0136] ABS(R_ARRAY[1,REFERENCE_BREAKPOINT]−TRANSMITTED_(T))<INTRA_LABEL_VARIANCE.

[0137] Thus, the first time through the loop processor 1200 executes the THEN clause of TABLE 1:

[0138] R_ARRAY[1,LABEL_VALUE]=0001or 1^(Λ)1.

[0139] Thus, immediately after this invocation of step 20045, R_ARRAY [1, LABEL_VALUE] is equal to 0011, R_ARRAY [2, LABEL_VALUE] is equal to 0000, and R_ARRAY[3, LABEL_VALUE] is equal to 0001.

[0140] Subsequently, step 20045 detects a reference segment between I2 and I3, having a slope of 0.42. Subsequently, processor 1200 executes steps 20025, 20030, and 20035, until step 20030 detects a segment, having a slope of .34 or less (.34 being 20% less than .42). Now, TRANSMITTED_(T) has a value in the vicinity of I3. Thus, when processor 1200 executes the FOR loop of step 20045, shown in TABLE 1 above, the IF statement condition will be true the second time through the loop, because R_ARRAY [2, REFERENCE_BREAKPOINT] also has a value in the vicinity of I3. More specifically, the following expression will be true:

[0141] ABS(R_ARRAY[2,REFERENCE_BREAKPOINT]−TRANSMITTED_(T))<INTRA_LABEL_VARIANCE.

[0142] Thus, the second time through the loop processor 1200 executes the THEN clause of TABLE 1:

[0143] R_ARRAY[2,LABEL_VALUE]=0000or 1^(Λ)1.

[0144] Thus, immediately after this invocation of step 20045, R_ARRAY [1, LABEL_VALUE] is equal to 0011, R_ARRAY [2, LABEL_VALUE] is equal to 0010, and R_ARRAY[3, LABEL_VALUE] is equal to 0001.

[0145] Subsequently, step 20045 detects a reference segment between I3 and I4, having a slope of 0.14. Subsequently, processor 1200 executes steps 20025, 20030, and 20035, until step 20030 detects a segment, having a slope of 0.11 or less (0.11 being 20% less than 0.14). Now, TRANSMITTED_(T) has a value in the vicinity of I4 Thus, when processor 1200 executes the FOR

[0146] loop of step 20045, shown in TABLE 1 above, the IF statement condition will be true the third time through the loop, because R_ARRAY [3, REFERENCE_BREAKPOINT] also has a value in the vicinity of I4 More specifically, the following expression will be true:

[0147] ABS(R_ARRAY[3,REFERENCE_BREAKPOINT]−TRANSMITTED_(T))<INTRA_LABEL_VARIANCE.

[0148] Thus, the third time through the loop processor 1200 executes the THEN clause of TABLE 1:

[0149] R_ARRAY[3, LABEL_VALUE]=0001 or 1^(Λ)1.

[0150] Thus, immediately after this invocation of step 20045, R_ARRAY [1, LABEL_VALUE] is equal to 0011, R_ARRAY [2, LABEL_VALUE] is equal to 0010, and R_ARRAY[3, LABEL_VALUE] is equal to 0011.

[0151] Subsequently, step 20020 detects a reference segment past intensity I4 having a slope 0.Processor 1200 then repeatedly executes steps 20025, 20030, and 20035 until TRANSMITTED_(T)>IMAX, and the procedure of FIG. 20 then terminates.

DETECTION OF BIT 2 FOR EACH LABEL

[0152] Processor 1200 then sets the system to detect the next most significant bit, by setting sine wave generator 1116 to the frequency Tbit2 and setting band pass filter 1128 to a band centered around Rbit2; and performs the variable assignment BIT_POSITION=2. (step 18080). Processor 1200 then attempts to process each breakpoint at the transmitted frequency Tbit2, (step 18030), by executing the procedure outlined in FIG. 20. In other words, processor 1200 collects data along the response curve bit2_shown in FIG. 17D.

[0153] After setting an initial intensity of I1 for amplifier 1118 (step 20010), processor 1200 detects a reference segment between I1 and I1+IDELTA, having a slope of 0. Processor 1200 then repeatedly executes steps 20025, 20030, and 20035 until TRANSMITTED_(T)>IMAX, and the procedure of FIG. 20 then terminates.

DETECTION OF BIT 3 FOR EACH LABEL

[0154] Processor 1200 then sets the system to detect the next most significant bit, by setting sine wave generator 1116 to the frequency Tbit3 and setting band pass filter 1128 to a band centered around Rbit3; and performs the variable assignment BIT_POSITION=3. (step 18080). Processor 1200 then processes each breakpoint at the transmitted frequency Tbit3, (step 18030), by executing the procedure outlined in FIG. 20. In other words, processor 1200 collects data along the response curve bit3_shown in FIG. 17E.

[0155] After setting an initial intensity of I1 for amplifier 1118 (step 20010), processor 1200 detects a reference segment between I1 and I1+IDELTA, having a slope of 0.98. Processor 1200 then repeatedly executes steps 20025, 20030, and 20035 until step 20030 detects a breakpoint segment, having a slope of 0.78 or less (0.78 being 20% less than 0.98). Now, TRANSMITTED_(T) has a value in the vicinity of I2. Thus, when processor 1200 executes the FOR loop of step 20045, shown in TABLE 1 above, the IF statement condition will be true the first time through the loop, because R_ARRAY [1, REFERENCE_BREAKPOINT] also has a value in the vicinity of I2. More specifically, the following expression will be true:

[0156] ABS(R_ARRAY[1,REFERENCE_BREAKPOINT]−TRANSMITTED_(T))<INTRA_LABEL_VARIANCE.

[0157] Thus, the first time through the loop processor 1200 executes the THEN clause of TABLE 1:

[0158] R_ARRAY[1,LABEL_VALUE]=0011or 1^(Λ)3.

[0159] Thus, immediately after this invocation of step 20045, R_ARRAY [1, LABEL_VALUE] is equal to 1011 R_ARRAY [2, LABEL_VALUE] is equal to 0010, and R_ARRAY[3, LABEL_VALUE] is equal to 0011.

[0160] Subsequently, step 20045 detects a reference segment between I2 and I3, having a slope of 0.27. Subsequently, processor 1200 executes steps 20025, 20030, and 20035, until step 20030 detects a segment, having a slope of 0.22 or less (0.22 being 20% less than 0.27 ). Now, TRANSMITTED_(T) has a value in the vicinity of I3. Thus, when processor 1200 executes the FOR loop of step 20045, shown in TABLE 1 above, the IF statement condition will be true the second time through the loop, because R_ARRAY [2, REFERENCE_BREAKPOINT] also has a value in the vicinity of I2. More specifically, the following expression will be true:

[0161] ABS(R_ARRAY[2,REFERENCE_BREAKPOINT]−TRANSMITTED_(T))<INTRA_LABEL_VARIANCE.

[0162] Thus, the second time through the loop processor 1200 executes the THEN clause of TABLE 1:

[0163] R_ARRAY[2,LABEL_VALUE]=0010 or 1^(Λ)3.

[0164] Thus, immediately after this invocation of step 20045, R_ARRAY [1, LABEL_VALUE,] is equal to 1011, R_ARRAY [2, LABEL_VALUE] is equal to 1010, and R_ARRAY[3, LABEL_VALUE] is equal to 0011.

[0165] Subsequently, step 20045 detects a reference segment after 13, having a slope of 0 . Subsequently, processor 1200 executes steps 20025, 20030, and 20035, until TRANSMITTED_(T)>IMAX, and the procedure of FIG. 20 then terminates.

[0166] Thus, for each of labels 2020, 2025, and 2030, processor 1200 determines a respective set of other frequencies of the first signal at which the respective second signal has a nonlinearity corresponding to the respective first transmission amplitude. For label 2025, the set of other frequencies is Tbit1 and Tbit3. For label 2030, the set of other frequencies is Tbit0 and Tbit1.

[0167] Thus, the LABEL_VALUE field of each record in R_ARRAY stores an article identification signal for a respective suitcase.

[0168] The second preferred method allows for a substantial difference in break down voltage among labels, as long as the differences in break down voltage among the circuits of any particular label does not result in a difference in breakpoints greater than INTRA_LABEL_VARIANCE. Thus, the respective labels may be made from different batches of material and need not be calibrated to the extent that the resonant circuits on any particular label should be calibrated with each other.

[0169] The second preferred method detects a breakpoint by comparing the slope of a reference segment (SLOPE_(P)) to a slope of a present segment (SLOPE_(T)). Other methods might be employed to make the breakpoint detection relatively insensitive to the non-linearities caused by natural retransmitters (other than labels) in the environment of the system. For example, a method might be employed that also compares the slopes of adjacent segments.

[0170] The constants, such as IDELTA and 5*IDELTA, may be adjusted for an optimum trade off between design goals.

[0171] If some mechanical configurations of the preferred system might allow two or more labels to have distances and orientations from the transmitting antenna causing two labels to exhibit reference breakpoints values that are closer than INTRA_LABEL_VARIANCE, this conflict condition can be detected in a number of ways. First, each LABEL_VALUE field could include redundancy bits, such as a checksum or a cyclic redundancy code, allowing the processor to verify a correct LABEL_VALUE. Alternatively, the processor may consult a table after reading a particular LABEL_VALUE, the absence of the LABEL_VALUE in the table indicating this conflict condition.

[0172] Alternatively, the processor may compare the sharpness of the breakpoints corresponding to the various one-valued bits in a read code. Normally, similar sharpnessess indicate that the breakpoints correspond to a single label. In this conflict condition, however, the reference breakpoint sharpness may have a relatively high value resulting from multiple labels having the same breakpoint at the reference frequency, while a breakpoint corresponding to a particular bit position may have a substantially lower sharpness resulting from only a single label having the breakpoint.

[0173] Although the preferred embodiments of the invention employ resonant tag circuits that retransmit in response to receiving an interrogation signal, the invention may employ other types of schemes, such as detection of interrogator antenna loading caused by the label circuits. In such a system, detuning caused by a voltage limiter in the label circuit limits the loading on the interrogator circuit.

[0174] The illustrated conveyor belts move the labels at a slow speed relative to the speed of execution of the preferred methods discussed above. Thus, although movement of the labels relative to the antennas changes the breakpoints, during any particular execution of the preferred method the labels are in a fixed position relative to the antennas.

[0175] In the event the conflict condition described above occurs, the preferred methods may be reexecuted after the conveyor belt moves the labels to a new position relative to the antennas. At the new position, the breakpoint positions may have changed such that a conflict no longer exists.

[0176] Although the illustrated embodiments of the invention employ a dedicated voltage limiting circuit, in its broadest sense the invention may be practiced without such a dedicated circuit since the preferred methods will process breakpoints in the response of the label circuits, regardless of the origin of such breakpoints.

[0177] Conversely, the invention may be practiced with more complicated dedicated circuitry to generate the non-linear response, as shown in FIG. 21. FIG. 21 shows circuit 2111′, which is a substitute for circuit 2111 shown in FIG. 5. Circuit 2111′has the responses shown in FIG. 8A and FIG. 9A. Battery 21010 supplies the power to band pass filter 21020, demodulator 21025, limitor 21030, and variable power wave form generator 21035. A signal from a receiving antenna 21015 is filtered by a band pass filter having a pass band centered around Tref. Band pass filter 21020 applies a filtered output to demodulator 21025, which applies a level to limitor 21030. Limitor 21030 has an output that is an increasing function of its input until a certain voltage level is reached at the input, at which point the output remains at a constant maximum value. The output of limitor 21030 controls variable power wave form generator 21035, which transmits a signal having a frequency Rref.

[0178] As another alternative, a label circuit might have a comparator and digital logic to generate a non-linear retransmission response. Thus, the invention may be practiced with many types of label circuit having a non-linear response.

[0179] Thus, the invention permits label reading in a multi-label environment.

[0180] Additional advantages and modifications will readily occur to those skilled in the art and may learned from the practice of the invention. The invention in its broader aspects is therefore not limited to the specific details, representative apparatus, and illustrative examples shown and described. Accordingly, departures may be made from such details without departing from the spirit or the scope of applicant's general inventive concept. The invention is defined in the following claims. 

What is claimed is:
 1. In a system including a transmitter that transmits an interrogation signal, and a plurality of articles each having a respective circuit for transmitting a respective circuit signal responsive to the interrogation signal, the circuit signal having a nonlinearity, a method comprising the steps, performed for each circuit, of: detecting the nonlinearity; recording a condition of the interrogation signal, responsive to the previous step; and using the recorded condition to access a record for the circuit.
 2. The method of claim I wherein the condition includes an amplitude.
 3. The method of claim I further including recording a plurality of digits in the record.
 4. The method of claim 3 wherein each digit corresponds to a respective frequency.
 5. The method of claim I wherein detecting the nonlinearity includes causing an interrogation signal to have a first interrogation signal frequency at a first time, and the method further includes detecting a plurality of digits includes by causing the interrogation signal to have other interrogation signal frequencies at a time different than the first time.
 6. An apparatus for a system including a transmitter that transmits an interrogation signal, and a plurality of articles each having a respective circuit for transmitting a respective circuit signal responsive to the interrogation signal, the circuit signal having a nonlinearity, the apparatus comprising: a detector that detects, for each circuit, the nonlinearity; a recorder that records a condition of the interrogation signal, in response to an output of the detector; and an allocator that allocates a respective record for each circuit, the record being accessible by the recorded condition.
 7. The apparatus of claim 6 further including logic that records a plurality of digits in the record.
 8. The apparatus of claim 7 further including logic that detects the plurality of digits, by causing an interrogation signal to have a plurality of interrogation signal frequencies.
 9. An apparatus for a system including a transmitter that transmits an interrogation signal, and a plurality of articles each having a respective circuit for transmitting a respective circuit signal responsive to the interrogation signal, the circuit signal having a nonlinearity, the apparatus comprising: means for detecting the nonlinearity; means for recording a condition of the interrogation signal, responsive to the previous means; and means for accessing a record for a circuit by using the recorded condition.
 10. The apparatus of claim 9 further including an allocator that allocates a record responsive to an output of the means for detecting.
 11. The apparatus of claim 9 further including logic that records a plurality of digits in the record.
 12. The apparatus of claim 11 further including logic that detects the plurality of digits, by causing an interrogation signal to have a plurality of interrogation signal frequencies. 